package cn.tedu.genneric;

import java.util.List;

/**
 * @author ：Dsi
 * @date ：2021/11/17 14:42
 * Describe ：该类用于测试泛型的优点2
 */
public class TsetGeneric02 {
    public static void main(String[] args) {
        Integer[] a={1,2,3,4,5,6,7,8,9,10};
        print(a);
        String[] b={"打嗝","吃饭"};
        print(b);
        Double[] d={6.0,6.6,6.66};
        print(d);
        
    }
/*1.泛型可以实现通用代码的编写
* 2.泛型的语法要求：如果在方法上使用泛型，必须两处同时出现
* 一个是传入的参数类型，一个是方法返回值类型前的泛型类型，表示这是一个泛型方法*/
    private static <A> void print(A[] a) {
        for (A f:a
             ) {
            System.out.println(f);
        }
    }

//    private static void print(Integer[] a) {
//        for (int i = a.length; i > 0; i--) {
//            System.out.println(a[i-1]);
//        }
        /*高效for循环/foreach循环：
        *语法：for（1 2 ： 3）{循环体}
        *3代表的是你要遍历的主体，1是每轮遍历到的数据类型，2是遍历到的元素的名字*/
        /*好处是高效书写简便*/

        /*普通for循环的好处是可控制步长，即每轮走多远*/
//        for (Integer a1:a
//             ) {
//            System.out.println(a1);
//        }
//    }
//    private static void print(String[] b) {
//        for (String b1:b
//             ) {
//            System.out.println(b1);
//        }
//    }
//    private static void print(Double[] d) {
//        for (Double i:d
//             ) {
//            System.out.println(i);
//        }
//    }
}
